package br.com.commerj.teste;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import br.com.commerj.dao.EnderecoDAO;
import br.com.commerj.dao.PessoaDAO;
import br.com.commerj.dao.TelefoneDAO;
import br.com.commerj.model.Pessoa;
import br.com.commerj.model.Telefone;

public class Main {
	
	
	public static void main(String [] args)throws ExceptionTeste,SQLException{
		try{
		String msgResp = "";
		Pessoa p = new Pessoa();
		PessoaDAO pd = new PessoaDAO();
		Main m = new Main();
		
		p.getEndereco().setLogradouro("Praia de botafogo");
		p.getEndereco().setNumero("360");
		p.getEndereco().setComplemento("Complemento endereco");
		p.getEndereco().setBairro("Botafogo");
		p.getEndereco().setCidade("Rio de Janeiro");
		p.getEndereco().setEstado("RJ");
		EnderecoDAO ed = new EnderecoDAO();
		msgResp = ed.salvar(p.getEndereco());
		p.getEndereco().setCodEndereco(ed.lastId());
		
		
		p.setNome("PESSOA UM");
		p.setRg("RG UM");
		p.setCpf("10636998789");
	    msgResp = pd.salvar(p);
	    if(msgResp!= "SALVAR")
	    	throw new ExceptionTeste(msgResp);
	    pd = new PessoaDAO();
	    p.setTelefones(m.getTelephones(pd.lastId()));
	    TelefoneDAO td = new TelefoneDAO();
	    for(Telefone telefone : p.getTelefones()){
	    	
	    	td.salvar(telefone);
	    }
	    
	   
	    System.out.println(msgResp);
		}catch (Exception e) {
			e.printStackTrace();
		}finally{
			System.exit(0);	
		}
	}
	
	public List<Telefone> getTelephones(Integer idPessoa){
		
		List<Telefone> lista = new ArrayList<Telefone>();
		Telefone telefone = new Telefone();
		telefone.setCodTelefone(1);
		telefone.setDdd("22");
		telefone.setNumero("98353051");
		telefone.getPessoa().setCodPessoa(idPessoa);
		lista.add(telefone);
		telefone = new Telefone();
		telefone.setCodTelefone(2);
		telefone.setDdd("23");
		telefone.setNumero("99353051");
		telefone.getPessoa().setCodPessoa(idPessoa);
		lista.add(telefone);	
		return lista;
	}
	
}
